package com.beta.service;

import com.beta.em.order.PayStatus;
import com.beta.em.order.OrderStatus;
import com.beta.entity.Orders;

/**
 * Created by vector on 2016/12/7.
 */
public interface IOrderStatusService {

    void changeStatus(Integer orderId, OrderStatus status, PayStatus payStatus);

    /**
     * 执行已过期订单的状态同步动作
     */
    void executeSyncExpiredOrderStatus();

    boolean isExpired(Orders order);

    boolean isCanceled(Orders orders);

    boolean isPaid(Orders orders);

    boolean isAssigned(Orders orders);

    boolean isPicked(Orders orders);

    boolean isShipped(Orders orders);

    boolean isReceipted(Orders orders);

    boolean isComplete(Orders orders);

    boolean isSettled(Orders orders);
}
